Đáp án D 
Kiến thức về danh động từ
Theo quy tắc:
Admit to sth/doing sth: thừa nhận cái gì/ làm việc gì 
=> Ta dùng "admit to having Vp2" để nhấn mạnh hành động đó xảy ra trước hành động còn lại trong quá khứ
Tạm dịch: John thừa nhận đã bỏ qua rất nhiều khóa học bắt buộc trong chương trình học chuyên sâu của anh ấy. 
Cấu trúc khác cần lưu ý:
Admit sb into/to sth: cho phép ai tham gia vào cái gì